ヘッダーをスキップ
Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド
リリース6.0
B25764-02
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

適切なロギング・オプションの選択

ディスクレス・ロギングを設定した場合、ログ・バッファの大きさが十分でないと、ログ・ファイルは生成されず、トランザクション全体がロールバックされる可能性があります。したがって、ディスクレス・ロギングを使用している場合、トランザクションの永続性はTimesTenでは保証されません。アプリケーションでは、チェックポイントを使用して永続性を保証できます。通常、ディスクレス・ロギングを使用するとトランザクションの強制終了が多発する可能性があるため、ディスクレス・ロギングを使用する場合は注意が必要です。

一部のアプリケーションでは、トランザクションの消失が許容される場合があります。たとえば、システムまたはアプリケーションで障害が発生しても、別のソースからデータを再生成できる場合があります。また、必要に応じてデータを保存するために効果的な間隔でチェックポイント処理をアプリケーションで実行できる場合があります。これらの場合、データ・ストアへの接続時に、ロギングを無効に設定することをお薦めします(『Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド』のデータ・ストア属性に関する項を参照)。ただし、これによって原子性が失われる場合があります(『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のトランザクションの管理およびリカバリに関する項を参照)。

また、ログは、エラー処理中トランザクションのロールバックで使用されます。また、アプリケーションまたはシステムでエラーが発生した場合にトランザクションの再実行に使用されます。ロギングを無効にすると、ほとんどの文は原子的に実行されますが、トランザクション全体はロールバックできません。原子的に実行されなかった文の場合は、エラーが返されます。アプリケーションが開発段階である場合、またはなんらかの理由でロールバックが多発している場合、ロギングを無効にすると、これらのエラーが発生する可能性があります。これらのエラーが発生すると、データ・ストアの一貫性が失われる場合があります。この場合、ディスクレス・ロギングまたはディスクへのロギングを使用することをお薦めします。非永続コミットの使用方法については、「永続コミットの適切な使用」を参照してください。

次に、ロギングに関する追加情報を示します。